1 为什么要采用html格式交付研究报告?

1.1 因为html本身有很多优点

1.1.1 交互性

## 'getSymbols' currently uses auto.assign=TRUE by default, but will
## use auto.assign=FALSE in 0.5-0. You will still be able to use
## 'loadSymbols' to automatically load data. getOption("getSymbols.env")
## and getOption("getSymbols.auto.assign") will still be checked for
## alternate defaults.
## 
## This message is shown once per session and may be disabled by setting 
## options("getSymbols.warning4.0"=FALSE). See ?getSymbols for details.
## [1] "AAPL" "MSFT"
## Warning: `line.width` does not currently support multiple values.

## Warning: `line.width` does not currently support multiple values.

## Warning: `line.width` does not currently support multiple values.

## Warning: `line.width` does not currently support multiple values.

1.1.2 扩展性

#<script>
#    window.oncontextmenu = function () {
#        console.log("Right Click Disabled");
#        return false;
#    }
#</script>
  • 阅读量数据统计

  • 阅读者身份追踪

  • 阅读密级管理……都要依靠服务器实现

  • html是开放的系统,每天有无穷无尽的人在使用、试错、迭代,你想用它做的任何事可能都已经有人问过、作过、产品化、免费分享了。与之相对,office是封闭的系统,Microsoft没有开发的功能,就是没有

1.1.3 美观性

iris[1:10, ] %>%
  mutate_if(is.numeric, function(x) {
    cell_spec(x, bold = T, 
              color = spec_color(x, end = 0.9),
              font_size = spec_font_size(x))
  }) %>%
  mutate(Species = cell_spec(
    Species, color = "white", bold = T,
    background = spec_color(1:10, end = 0.9, option = "A", direction = -1)
  )) %>%
  kable(escape = F, align = "c") %>%
  kable_styling(c("striped", "condensed"), full_width = F)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
5.1 3.5 1.4 0.2 setosa
4.9 3 1.4 0.2 setosa
4.7 3.2 1.3 0.2 setosa
4.6 3.1 1.5 0.2 setosa
5 3.6 1.4 0.2 setosa
5.4 3.9 1.7 0.4 setosa
4.6 3.4 1.4 0.3 setosa
5 3.4 1.5 0.2 setosa
4.4 2.9 1.4 0.2 setosa
4.9 3.1 1.5 0.1 setosa

1.2 生产html并不困难

1.2.1 基于Rmarkdown产出文档、演示文稿

  • Markdown是一门常见的网络语言,把人容易理解的语句转化成html的编码,从而生成html文件。语雀、confluence都基于Markdown,其受欢迎程度日益增强

  • Rmarkdown是Markdown语言的一个变体,基于Rstudio,整合了R强大的数据分析和可视化能力,能够生成清晰、美观、交互性的研究报告。

  • Rmarkdown的一篇基础教学知乎页面:https://zhuanlan.zhihu.com/p/24884324

  • Xaringan是基于Rmarkdown的演示文稿生产语言,成果可以一定程度上模拟ppt、latex的效果。Rmarkdown和Xaringan的作者(之一)都是一名中国人谢益辉,因此有不少作者写作的中文教学文章。

  • Rmarkdown、Xaringan的官方教学:https://bookdown.org/yihui/rmarkdown/xaringan.html

  • Rmarkdown的速查手册:https://bookdown.org/yihui/rmarkdown/cheat-sheets.html

1.2.2 Rmarkdown跟ppt比的优势

  • 对于学术写作来说,Rmarkdown的最大优势在于整合了R的数据分析和可视化能力,把制图、制表整合到了写作当中,而且这些图表是可以交互的。此外,它引用了专业的公式写作引擎,能够精确书写非常复杂的数学公式

  • Rmarkdown把“内容”和“格式”完全分离开来,格式通过css模板来规定,只需要把格式标记到相应内容上就可以改变最终的呈现形式。这样,设计师可以专门设计模板,研究者专注于内容的写作,而且要改变格式只需要改变调用的css模板就可以了。由于Xaringan基于Rmarkdown,因此很容易在文档和演示文稿之间切换

  • 由于设计基于css语言,可以确保颜色、字体、字号、位置、大小、页码等完全精确、统一,免除手调的烦恼

  • Rmarkdown生产的html文件向下兼容,可以fang

1.2.3 Rmarkdown的学习难度